Copyright: Made with Shalom Help Maker www.danish-shareware.dk/soft/shelpm/


Introduction

 Total Uninstall

Total Uninstall can help you to monitor any changes that were made to your system during installation of a new software product or any other computer activity that made changes in the file system and/or registry.

The program allow you to perform a complete uninstall without having to rely on the supplied uninstall program which may leave files or changes behind.

To use it, you simply launch the installation program from the Total Uninstall interface and select the system areas to be monitored. The program will then create a snapshot of your system before it installs the new software and an additional snapshot after install completes. It then compares the two snapshots and displays all changes in a graphical tree view, marking all values and/or files that have been added or changed as well as some before/after details. Total Uninstall will save these changes and if you decide to uninstall the application, it will reverse all changes to the previous state.

You can't uninstall applications already installed on your system or that are not monitored with this program.


System requirements

Hardware requirements
Total Uninstall has minimal hardware requirements, It should work successfully on any hardware capable of running any 32-bit version of Windows.

Software requirements
Total Uninstall needs for running any version of 32-bit Windows. The program is self-contained and it does not need or depend to any system libraries, installed updates, patches etc. The program was tested on the following operating systems: Win 95, Win98, Win Me, WinNT, Win2000, WinXP.

I'd be thankful for reporting specifications of a system where Total Uninstall did not work correctly.


Installation

Installation
Extract all the files from the .zip package. Execute the Setup.exe program and follow the instructions. The Total Uninstall application file is called Tun.exe.

Update
Install the new version over the existing. The setup program will detect automatically the location of the previous version. If you uninstall the previous version, you will lose all program settings.

How to Uninstall
Uninstall Total Uninstall by using the Control Panel's Add/Remove Programs dialog box. Then remove manually the program folder that contains the *.tun files, usually named "C:\Program Files\Total Uninstall".


How it works?

1. Before scan - preinstall
Total Uninstall creates a snapshot of your system (file system and registry) before the monitored application run. In the most of the cases monitored application is a setup utility but can be also any kind of application or other activity that make changes in the system. After this step the Total Uninstall application can be leaved active or can be closed.

2. Make changes - install
 Now you can launch the monitored application from Explorer or any file manager that you have or within the Total Uninstall interface.

3. After scan - post install
Launch Total Uninstall if was closed or continue the wizard to record another snapshot, load the previous snapshot, compares the two, and show the differences in a graphical tree. The changes are saved automatically with the name provided in the first page of the wizard.

4. View and edit the changes
Navigate in the Changes tree to see the detected changes.
The only operation you can make to alter the detected changes is removing the nodes from the tree.
Delete the irrelevant detected changes like changes that you know that have nothing to do with the monitored application. After using the application several time you will become an expert when deciding what changes are irrelevant.
Save the changes made by you.


Versions History

Legend
    ! Bug fixed
    + Added feature
    * Improvement/modification

Version 2.34
  ! Cannot start maximized if the screen resolution is 640x480
  ! Monitored applications list is not always well sorted
  + Monitored applications list remember last sort order and column sizes.
  + New translations added

Version 2.33
    ! Crash when the system registry contains values with undocumented/custom data type

Version 2.32
    ! Restored registry values of type REG_MULTI_SZ converted to REG_BINARY
    + Option to hide the background image from changes tree
    * Some cosmetic changes

Version 2.31
    ! On NT based OS the uninstaller reports wrong deleted shared files counters
    + Buttons to expand/collapse the changes tree
    + New translations added
    ! Edit controls shows the "What's This" menu instead of standard popup
    * Changes in the saving settings area. The registry cleaners should not report anymore
      problems in the Total Uninstall registry
    * Recycle Bin is used when "Automatically delete the .tun file if successful uninstall"

Version 2.30
    + Multilanguage support.
    + Export changes to text.
    + Option Auto delete .tun file if successful uninstall.
    + User control of removing shared files.
    + "Properties" context menu item for files/folders from Changes tree.
    + Monitored application list can be sorted.
    ! Shared files with DOS name were treated as ordinary files.
    * Several cosmetic changes.

Version 2.20
    + View as hexadecimal or as string the registry binary values.
    + Ignore list for files.
    + Ignore list for registry keys.
    + "Add to ignore list" context menu item in Changes tree.
    + Options for Changes tree font.
    + "View" context menu item for files from Changes tree.
    * Support for a more customized log.
    ! Print doesn't work on all systems.
    * Other cosmetic changes and optimizations.

Version 2.11
    * Temporary disk space needed when scanning reduced with 59%.
    * Total scanning and processing time reduced with 53%.

Version 2.10
    + Print the changes tree.
    + Edit/save the changes tree (delete irrelevant nodes).
    + Moved files are now detected.
    + Help context and "What's this" context menu added.
    + Customized uninstalling logs level.
    + "Open" context menu item for files from Changes tree.
    * Check box "Keep database for a future use" removed.
    * Several applications can be monitored/uninstalled without restarting.
    ! Window position and size are saved/restored.

Version 2.04
    ! Minimize to tray bug on "Large Fonts" display settings.

Version 2.03
    * Total Uninstall registry entries are not scanned anymore.
    * System disk target instead of disk "c:".
    ! Generic "Program Files" target instead of "c:Files".
    ! "Large fonts" bug. Controls not visible.
    + The last scanned targets are saved.
    + A better control of the monitoring process. Confirmation dialog before
     ending a process. Close button disabled.
    + User defined targets in the file system.
    ! Running on NT OS reports wrong created keys.

Version 2.02
    * Home page moved to www.users.rol.ro/gmartau.
    ! Tray button problem on customized display appearance.

Version 2.01
    + Work on WinNT, Win2000.
    ! Spelling errors.
    ! Crash when scanning Recycled folder in Windows NT

Version 2.0
    + Only for Win9x family.
    + English version, first release on the Internet.
    + Scanning speed improved.

Version 1.0
    + First public release in a computer magazine CDROM.
    + Romanian language only.


Excluded Folder List

The folders added to this list will be skipped when scanning the file system (the chosen targets). If an excluded folder has several folders/files then the scanning/analyzing time and memory allocated during creation of the snap shoots is reduced.

The most suitable folders to be added to the ignore list:

 "Recycle Bin" - depending of your operating system this is for the C: drive "C:\RECYCLED" or "C:\RECYCLER"
 Temporary Internet Files - the folder where your browser store the internet cache.
 Folders of the already installed applications - some of them can run in background while monitoring so the changes made by these applications should be avoided to appear in the changes result. An example of such application is the mail client that you want always to run.
 Folders with your data - "My Documents" or other folders that you use to store important data.

Note:
You can add folders to the exclude folder list from Options dialog->Scanner tab or from Changes Tree view context menu.


Ignored Changes From Files

The changes from these files will be ignored by the comparing algorithm. The files that appears in this list even if are deleted, created, changed or moved will not appear in the result.

There is no performance gain if you choose several files to ignore. If it is possible, exclude an entire folder instead of ignoring changes from all files from that folder.

Files that are suitable to be added in this list are:
 SYSTEM.DAT and USER.DAT - the files used by the Windows to store the registry
 PAGEFILE.SYS or WIN386.SWP - the Windows virtual memory file. The file name depend of the kind of operating system that you have.

Note:
You can add files to this ignore list using the Options dialog->Scanner tab or from Changes Tree view context menu.


Ignore Changes From Registry Keys

The comparing algorithm will ignore the changes from registry key that appears in this list and also in theirs sub-keys and values.

Registry keys that are suitable to be added in this list are:

 Known programs keys located in the HKEY_LOCAL_MACHINE\Software\<company>\<software product> and in HKEY_CURRENT_USER\Software\<company>\<software product>

 Last known good hardware configuration located in HKEY_CURRENT_CONFIG\System\CurrentControlSet. It is also recommended to ignore the backup of these hardware configurations located in HKEY_CURRENT_CONFIG\System\CurrentControlSet## where ## can be 00, 01, 02, ...

Note:
You can add files to this ignore list using the Options dialog -> Scanner page or from Changes Tree view context menu.


Begining monitoring

Start the Total Uninstall application. The "Install a new application" option is checked.
Enter a friendly identifier for the monitored application. The identifier should be a valid file name.
You can also drag and drop an executable over the current screen. The identifier is automatically filled.
The changes detected during  monitoring will be automatically saved in a file with the extension .tun and with the name the identifier that is given in this screen.
Configure the scanner options. Most important are the Excluded folder List.
Press the Next button to get the new screen.


Choose area

 Choose the registry categories that you want to monitor. In the most of the cases is enough to monitor the following registry categories: HKEY_LOCAL_MACHINE, HKEY_CLASSES_ROOT, HKEY_CURRENT_USER

 Choose the folders to be scanned. The generic Program Files folder and the Windows folder are disabled and checked automatically if you want to scan the entire system partition. Usually is not necessary to scan the entire file system.

Using the Other folders field you can set additional folders to be scanned. Separate several paths by semicolon. The application will not check if the additional folders are duplicates so be sure that the same folder is not scanned twice.
If the operating system is Win2000 or WinXP then the "Documents and settings" folder should be added here as an additional folder.

The last targets combination will be restored the next time you use the application.
Press next to allow Total Uninstall to create the pre-install snapshot.


Launch install program

In this screen you can choose between:

 Install one application. Type in the edit provided the application full path or use the right button to browse for the executable. You can also to drag and drop from Explorer the application that you want to start. The Total Uninstall will remember the last monitored application path. Pressing next the Total Uninstall will start the application to monitor. When the installation process is finished press next to allow Total Uninstall to create the post install snapshot.

 Install several applications. Choose this option if you intend to install more than one application or you don't want to keep Total Uninstall application in memory. Press exit to close the wizard. After the installations are completed you have to restart the Total Uninstall application to create the second snapshot and to search for the changes.

 Install one or more applications during this screen. Choose this option if you want to keep the Total Uninstall application active while you run the install program within Explorer or other file manager. You can minimize the Total Uninstall application until the installations are finished.  When the installations are finished press next to allow Total Uninstall to create the post install snapshot.

Notes:
 Because most of the applications creates the registry entries, .ini files etc at first run is recommended to start the installed applications, make some specific operations and exit. Then you can continue to take the second snapshot.

 Many install utilities requires that you restart Windows to complete the process. Don't worry - Total Uninstall will close with Windows and will restart when the Windows is restarted. Then you can continue to take the second snapshot.


Post install snapshot

During this stage, Total Uninstall make the second snapshot, loads the preinstall snapshot and compares the pre and post-install snapshots. It shows the changes from system.


View, edit the changes

Detected changes after comparing the system snapshots:

Registry
    created key
    deleted key
    new integer or binary value
    deleted integer or binary value
    modified integer or binary value
    integer or binary shared file counter modified
    new string value
    deleted string value
    modified string value
    string shared file counter modified

File System
    new folder
    deleted folder
    new file
    deleted file
    modified file - date time stamp or size
    file moved from this location(deleted)
    file moved to this location(created)

You can delete the irelevant nodes from the changes tree. Use the button to save your changes.
The changes can be exported in a text file.


Begining uninstallation

Start the Total Uninstall application.
Configure the uninstaller options, decide what category changes to uninstall. Choose the log level.
Choose the "Uninstall or view changes of a monitored application" option.
Select from the below list a monitored application.
Press the Next button to load the changes.


Last details

Changes that the Total Uninstall application can restore/uninstall has a checkbox in front:

Registry
    created keys will be deleted if don't have sub-keys
    deleted keys will be created
   , [image] created values will be deleted
   , [image] deleted values will be created
   , [image] modified values will be restored

File System
    created folders will be deleted if are not empty
    created files will be deleted

Uncheck the nodes from the tree that you don't want to be restored/uninstalled.

You can delete the irrelevant nodes from the changes tree. Use the button to save your changes.

The changes can be exported in a text file.

Press next to start uninstallation.


Recommandations

It is recommended to uninstall the monitored applications in the reverse order.
Because several applications can register the same file extension you can get an incorrect association with an already uninstalled application if you uninstall the monitored applications in a random order.
Here is an example of such situation that can be avoided if the uninstallations are in the reverse order.
1. Windows clean install, .jpg files are registered to Internet Explorer
2. Installing application APP1 that register the .jpg extention
3. Installing application APP2 that re-register the .jpg extention
4. Uninstalling the APP1 will restore the .jpg extension association back to previous state, Internet Explorer. The .jpg extension is now registered with Internet Explorer.
5. Uninstalling the APP2 will restore the .jpg association to APP1 but this is already uninstalled->invalid association. In this case, you can avoid this situation if you choose to do not restore the registry values from the options dialog.

Close the applications that will be uninstalled
Because the Total Uninstall cannot delete files/folders that are in use (open) close the applications that will be uninstalled.
Use the operating system task manager or other utility to close the application/related processes to be uninstalled.
If Total Uninstall could not delete some files because they are still in use you should reboot the system and delete the files/folders manually.

Delete manually the files/folder that Total Uninstall could not delete.
Some files were created after the monitored process. These changes don't appear in the Total Uninstall log.
When uninstalling these files will not be deleted and also the folders that contains such files. In the uninstallation log will appear a line that the folder was not deleted because is not empty. Delete that folder manually if doesn't contain important data.

Delete manually the non empty registry key that Total Uninstall didn't deleted
As a precaution Total Uninstall didn't delete the registry key that contains sub-keys created after the monitoring process.
In the uninstallation log will appear a line that the registry key was not deleted because is not empty. You should decide if it is necessary to delete (manually) or not that registry key.


Contacting the author

Total Uninstall is free for both commercial and non-commercial use. You are free to put the programs on a CD-ROM, but if you do so please send me a notification.

Copyright
© 2001 - 2003, Gavrila Martau, Romania

E-mail
  gmartau@yahoo.com.

Home Page
  http://www.geocities.com/ggmartau


Registry

A Windows database that provides centralized storage of startup, configuration and other information. The registry stores information about all installed hardware and any software that has been designed expressly for the Windows operating system. The registry is organized into categories called "registry keys".
The registry stores its information in two binary files: SYSTEM.DAT, which maintains up-to-date computer-related data, and USER.DAT, which can maintain multiple system configurations for different users.


Shared DLLs

Shared DLLs are application libraries files (.dll, .ocx, *.bpl, etc) containing functions that can be used by more than one application. So, more than one application can use in the same time, the same dll to run, preserving in this way the disk space and the RAM memory because the Windows loads a single instance of that dll that is shared between applications.

Is a common practice for each company that develops applications to have theirs own shared dlls.

The installer programs copy the shared dll usually in the Windows folder, Windows\System or in the Program Files\Common Files\<company> folders.

A DLL file is considered as shared if has associated a registry value (a counter) in the HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\SharedDLLs. The name of the registry value is the DLL full path and the data is the number of applications that share that DLL.

When a uninstaller application uninstall an application that uses a DLL then should only decrement the DLL's counter. If the counter reach zero (theoretic no application depends by that DLL) the uninstaller program should remove the DLL file from the system and its counter.

Examples of common shared DLL are the Microsoft Visual Basic runtime libraries (MSVBVMxx.DLL) and Microsoft Foundation Class for Visual C (MFCxx.DLL).


Empty1


Empty2


Empty3


Empty4


Empty5


Empty6


Empty7


Empty8


Empty9


Empty10


Install a new application

Check this radio button if you want to monitor changes made by one application or more, or other system changes. To continue you must provide an identifier for the monitored application.


Identifier

The identifier is a unique friendly name for the changes that will be detected and must be a valid file name.
This is used when saving/retrieving the detected changes.
You cannot continue without providing an identifier.


Uninstall or view changes

Check this radio button if you want to Uninstall/View/Edit / print changes. Before to continue you must select an identifier from the list.


Options

Configure the scanner and/or the uninstaller.


Identifiers list

The list contains the identifiers of the previous monitored applications. These are available to uninstall / view / print. This list is filled from the Total Uninstall directory.


Overall progress bar

Show the progress of the:
   Entire scanning, rescanning and comparing process
   Loading changes from file
   Uninstalling process


Back

Go back to previous step. In some situations, the previous step is not reachable so the button is disabled.


Next

Go to the next step. If the user must fill some information the button is disabled.


Exit / Stop

You can abort any operation in progress if the button shows "Stop" or close the application if the button shows "Exit".


About

Information's about application version and author.


Changes tree

Detected changes after comparing the system snapshots (before and after running an application):

Registry
    created key
    deleted key
    new integer or binary value
    deleted integer or binary value
    modified integer or binary value
    integer or binary shared file counter modified
    new string value
    deleted string value
    modified string value
    string shared file counter modified

File System
    new folder
    deleted folder
    new file
    deleted file
    modified file - date time stamp or size
    file moved from this location(deleted)
    file moved to this location(created)


Save

"Save" button

Save the changes tree to disk. After monitoring an application the changes are automatically saved. This button is enabled only if the user made some changes in the tree (delete nodes).


Print

"Print" button

Print the changes tree. You can print the entire changes tree or only the selected branch.


Export

"Export" button

Export the changes tree to a text file. You can export the entire changes tree or only the selected branch.


View binary as string

View the binary registry values as string. The binary data that contains strings are made visible. The non-characters are replaced with dots.


View binary as hexadecimal

View the binary registry values as hexadecimal.


HKEY_CLASSES_ROOT

HKEY_CLASSES_ROOT registry category

Windows store in this category the information's related to file associations, context menus visible in Explorer, OLE etc. This category is a shortcut to HKEY_LOCAL_MACHINEkey. When HKEY_CLASSES_ROOT and HKEY_LOCAL_MACHINE categories are both checked the Total Uninstall scanner will skip the registry key from HKEY_LOCAL_MACHINE that contains the same data like the entire HKEY_CLASSES_ROOT category.
Is recommended to scan this registry category to be able to restore the changed file associations.


HKEY_LOCAL_MACHINE

HKEY_LOCAL_MACHINE registry category

Windows store in this category the information's about hardware settings, drivers, shared dll counters, uninstall information and other system settings. The installed applications can add here the configuration data.
Is recommended to scan this registry category.


HKEY_USERS

HKEY_USERS registry category

Windows store in this category the information's about all users.
Usually is not necessary to scan this category, is enough to monitor the HKEY_CURRENT_USER category.


HKEY_CURRENT_USER

HKEY_CURRENT_USER registry category

Windows and installed software store in this category the settings specific for the current user (session).
Is highly recommended to scan this category.


HKEY_CURRENT_CONFIG

HKEY_CURRENT_CONFIG registry category

Windows store information's used by the GDI API (display, printers settings).
Usually is not necessary to scan this category


Scan "Windows" folder

Windows generic folder. Is highly recommended to scan this target.


Scan "Program Files" folder

Generic Program files folder. Is recommended to scan this target.


Scan the entire system partition

Scan the entire logical partition where the Windows reside.
It is recommended to scan this target only if you intend to install a trial application.


Other folders

Scan user defined folders.


Other folders field

Enter the folders that you want to be scanned. You can enter several paths separated by semicolon. These must be valid.


Installing one application

Use this option if you want to launch the monitored application within the Total Uninstall interface.


Application path

Enter the application full path or search for the monitored application using the "Browse" button.
You can also drag and drop and executable file from Explorer.


"Browse" button

Select the application (setup.exe) full path.


Installing several applications

Choose this option if you want to monitor more than one application, launch the monitored application from Explorer or you don't want to keep running the Total Uninstall when installing.


Monitored application is started

Choose this option if the monitored application is started by you after the first scanning stage has finished.


Uninstall log

Show the errors, warnings or all actions during the un-installation process. Try to find the cause and make these actions manually.
Configure the un-installation log level from options dialog.


Ok button

Save and apply the changes. Close the dialog.


Cancel button

Close the dialog without saving the changes.


Changes tree font

Select the font that will be used to display the changes tree. The same font is used when printing.


Changes tree font size

Select the font size that will be used to display the changes tree. The same font size is used when printing.


Viewer

Enter the program exe name to be used to view files when right clicking on changes tree and select "View".


Language

The list with available(installed) translations for this application.


Exclude folders from scanning

The scanner will skip the content of the folders from this list. Using context menu from Changes tree can be added entries in this list.


Add folder

Open a browse dialog where you can select or enter a path to be added to "Exclude folders list".


Remove folder

Remove the selected folder from "Exclude folders list".


Ignore changes from files

The files from this list will not be added to the Changes tree. Using context menu from Changes tree can be added entries in this list


Add file

Show an open dialog where you can select a file name to be added to the ignore file list.


Remove file

Remove the selected file from "Ignore files list".


Ignore changes from registry keys

The changes from the registry keys will not be added to the Changes tree if the key is in this list. Using context menu from Changes tree can be added entries in this list.


Add registry key

Show a dialog where you can type a registry key path name to be added to the ignore list.


Remove registry key

Remove the selected registry key from the ignore list.


Delete created values

If checked, when uninstalling, the created registry values [image], [image] detected during monitoring process will be deleted. You can still choose to do not delete some values in the changes tree unchecking the checkbox in front of each change.
If you uncheck this option then the created registry values from the changes tree will not have the checkboxes in front.


Create deleted values

If checked, when uninstalling, the deleted registry values [image], [image] detected during monitoring process will be created.
You can still choose to do not create some values in the changes tree unchecking the checkbox in front of each change.
If you uncheck this option then the deleted registry values from the changes tree will not have the checkboxes in front.


Restore changed values

Restore changes values

If checked, when uninstalling the registry changed values will be restored.


Delete created keys

If checked, when uninstalling the created registry keys will be deleted, except the case when has sub-keys.


Create deleted keys

If checked, the deleted registry keys will be created.


Decrease shared dll's counter

If checked, the counters of the shared DLLs [image], [image] will be decremented with the amount that was incremented during monitoring process. The counters can reach zero or can become negative.


Delete created files

If checked, the detected created files will be deleted. If a shared dll has the counter zero or less this will be deleted to Recycle Bin.
You can choose to use the Recycle Bin or not only for ordinary files (no shared DLLs).


Use Recycle Bin

Delete the files to Recycle Bin.


Delete created folders

Delete created folders. If the folders still have files/folders after deleting the created files then they will not be deleted.


Background image

Show the background image in the changes tree